

function _defineProperty(obj, key, value) {
    if (key in obj) {
        Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });
    } else {
        obj[key] = value;
    }return obj;
}

jQuery(function ($) {
    var user_info = JSON.parse(localStorage.getItem('user_info'));
    if (!user_info) {
        window.location.href = "/login/login.html";
    };
    //验证码
    //更新图片
    $('#change_pic').click(function () {
        change_pic();
    });
    //图形验证码
    function change_pic() {
        var tel = $.trim($("#phone").val()); //账号
        var img = document.querySelector('.text_pic');
        img.src = host + "/api/code/img?phone=" + tel;
    }
    //密码支付部分
    password();
    function password() {
        var _formPay = $('#form_paypsw');
        _formPay.validate({
            rules: {
                'payPassword_rsainput': {
                    'minlength': 6,
                    'maxlength': 6,
                    required: true,
                    digits: true,
                    numPassword: true,
                    echoNum: true
                }
            },

            messages: {
                'payPassword_rsainput': {
                    'required': '<i class="icon icon-attention icon-lg"></i>&nbsp;请填写支付密码',
                    'maxlength': '<i class="icon icon-attention icon-lg"></i>&nbsp;密码最多为{0}个字符',
                    'minlength': '<i class="icon icon-attention icon-lg"></i>&nbsp;密码最少为{0}个字符',
                    'digits': '<i class="icon icon-attention icon-lg"></i>&nbsp;密码只能为数字'
                    // 'numPassword' : '<i class="icon icon-attention icon-lg"></i>&nbsp;连号不可用，相同数字不可用（如：123456，11111）',
                    // 'echoNum' :'<i class="icon icon-attention icon-lg"></i>&nbsp;连号不可用，相同数字不可用（如：123456，11111）'		
                }
            },
            errorPlacement: function errorPlacement(error, element) {
                element.closest('div[data-error="i_error"]').append(error);
            },
            submitHandler: function submitHandler(form) {
                var _form = $(form);
                form.submit();
            }
        });
        var payPassword = $("#payPassword_container"),
            _this = payPassword.find('i'),
            k = 0,
            j = 0,
            password = '',
            _cardwrap = $('#cardwrap');
        //点击隐藏的input密码框,在6个显示的密码框的第一个框显示光标
        payPassword.on('focus', "input[name='payPassword_rsainput']", function () {
            var _this = payPassword.find('i');
            if (payPassword.attr('data-busy') === '0') {
                //在第一个密码框中添加光标样式
                _this.eq(k).addClass("active");
                _cardwrap.css('visibility', 'visible');
                payPassword.attr('data-busy', '1');
            }
        });
        //change时去除输入框的高亮，用户再次输入密码时需再次点击
        payPassword.on('change', "input[name='payPassword_rsainput']", function () {
            _cardwrap.css('visibility', 'hidden');
            _this.eq(k).removeClass("active");
            payPassword.attr('data-busy', '0');
        }).on('blur', "input[name='payPassword_rsainput']", function () {

            _cardwrap.css('visibility', 'hidden');
            _this.eq(k).removeClass("active");
            payPassword.attr('data-busy', '0');
        });

        //使用keyup事件，绑定键盘上的数字按键和backspace按键
        payPassword.on('keyup', "input[name='payPassword_rsainput']", function (e) {

            var e = e ? e : window.event;

            //键盘上的数字键按下才可以输入
            if (e.keyCode == 8 || e.keyCode >= 48 && e.keyCode <= 57 || e.keyCode >= 96 && e.keyCode <= 105) {

                k = this.value.length; //输入框里面的密码长度
                var l = _this.size(); //6

                for (; l--;) {

                    //输入到第几个密码框，第几个密码框就显示高亮和光标（在输入框内有2个数字密码，第三个密码框要显示高亮和光标，之前的显示黑点后面的显示空白，输入和删除都一样）
                    if (l === k) {
                        _this.eq(l).addClass("active");
                        _this.eq(l).find('b').css('visibility', 'hidden');
                    } else {
                        _this.eq(l).removeClass("active");
                        _this.eq(l).find('b').css('visibility', l < k ? 'visible' : 'hidden');
                    }

                    if (k === 6) {
                        j = 5;
                    } else {
                        j = k;
                    }
                    $('#cardwrap').css('left', j * 41 + 'px');
                }
            } else {
                //输入其他字符，直接清空
                var _val = this.value;
                this.value = _val.replace(/\D/g, '');
            }
        });
        //以上是密码支付部分
    };
    //匹配手机号||邮箱号
    var reg = /^1[3456789]\d{9}$/;
    var reg_email = /^\w+\@+[0-9a-zA-Z]+\.(com|com.cn|edu|hk|cn|net)$/;
    //判断格式
    $("#phone").blur(function () {
        if (reg.test($("#phone").val()) || reg_email.test($("#phone").val())) {
            $(".tel-msg").text('');
            change_pic();
            $('#input_code').removeClass('hide');
        } else {
            $(".tel-msg").text('请输入正确的手机/邮箱号');
            $('#input_code').addClass('hide');
            $('#imgCode').val('');
            return;
        }
        if ($("#phone").val() == '') {
            $(".tel-msg").text('对不起，账号不能为空');
            $('#input_code').addClass('hide');
            $('#imgCode').val('');
            return;
        }
    });
    //60秒倒计时

    var time = 60;
    var flag = true;
    var timer;
    //手机短信
    $('.btn-code').click(function () {
        var tel = $.trim($("#phone").val()); //手机号
        var imgCode = $.trim($("#imgCode").val()); //图形验证码
        if (!imgCode) {
            $(".tel-msg").html("对不起，图形验证码不能为空");
            return;
        };
        if (!tel) {
            $(".tel-msg").html("对不起，账号不能为空");
            return;
        } else if (reg.test(tel) || reg_email.test(tel)) {
            $(".tel-msg").text('');
            $.ajax({
                type: 'POST', //提交方法是POST
                url: host + '/api/code/sms', //请求的路径
                data: JSON.stringify({ phone: tel, imgCode: imgCode, type: 1 }),
                contentType: "application/json",
                error: function error(_error2) {
                    //请求失败的回调方法 
                    alert('网络加载失败，请稍候再试!');
                },
                success: function success(result) {
                    if (result.code == 200) {
                        $("#btn-code").attr("disabled", true);
                        if (flag == true) {
                            flag = false;
                            timeone();
                        } else {
                            $(".tel-msg").html(result.msg);
                        }
                    } else {
                        alert('网络加载失败，请稍候再试!');
                    }
                }
            });
        } else {
            $(".tel-msg").text('请输入正确的手机/邮箱号');
            return;
        }
    });
    function timeone() {
        $('#btn-code').html("(" + time + ")后重新发送");
        timer = setInterval(function () {
            time--;
            if (time == 0) {
                $("#btn-code").attr("disabled", false);
                $("#btn-code").html("点击获取验证码");
                time = 60;
                flag = true;
                clearInterval(timer);
            } else {
                $('#btn-code').html("(" + time + ")后重新发送");
            }
        }, 1000);
    };
    //提交注册支付密码
    $('#submit').click(function () {
        var url = window.location.href;
        var password = $('#payPassword_rsainput').val(); //密码
        var msg = $('#msg').val(); //验证码
        var tel = $.trim($("#phone").val()); //手机/邮箱号;
        if (reg.test($("#phone").val()) || reg_email.test($("#phone").val())) {
            $(".tel-msg").text('');
        } else {
            $(".tel-msg").text('请输入正确的手机/邮箱号');
            return;
        }
        if ($("#phone").val() == '') {
            $(".tel-msg").text('对不起，账号不能为空');
            return;
        }
        if (msg == "") {
            $(".tel-msg").text('请输入验证码！');
            return;
        }
        if (password.length == 6) {
            var param = {
                password: password,
                code: msg,
                type: 2,
                userId:user_info.id
            };
            if (reg.test(tel)) {
                param.phone = tel;
                param.email = "";
            } else if (reg_email.test(tel)) {
                param.email = tel;
                param.phone = "";
            }
            send_ajax('post', '/api/user/update_password', param, function callback(data) {
                if (data.code == 200) {
                    clearInterval(timer);
                    $("#btn-code").attr("disabled", false);
                    $("#btn-code").html("点击获取验证码");
                    $('#phone').val('');
                    $('#msg').val('');
                    $('#payPassword_rsainput').val('');
                    $('.sixDigitPassword-box b').css('visibility', 'hidden');
                    $('#cardwrap').css('left', 0);
                    swal(_defineProperty({
                        text: "密码设置成功！",
                        type: 'success',
                        showCancelButton: true,
                        confirmButtonColor: '#3AD997',
                        cancelButtonColor: '#EEE',
                        confirmButtonText: '确定'
                    }, 'showCancelButton', false)).then(function (isConfirm) {
                        if (isConfirm) {
                            // $('#phone').val('');
                            // $('#msg').val('');
                            // $('#payPassword_rsainput').val('');
                            // $('.sixDigitPassword-box b').css('visibility', 'hidden');
                            // $('#cardwrap').css('left',0);

                        }
                    });
                } else {
                    $(".tel-msg").text(data.msg);
                }
            });
        } else {
            $(".tel-msg").text('注册支付密码是六位数！');
        }
    });
});